Macro Lambda Calculus
نویسنده
چکیده
The goal of our Macro Lambda Calculus project (MLC) is to encode λ-terms into interaction nets. Its software implementation accepts input in the notation similar to λ-calculus allowing macro definitions. Output is similar to interaction calculus and is suitable for our Interaction Nets Compiler program (INC). In this paper, we describe the interaction system for call-by-need evaluation and the mechanism of encoding λ-terms into this system which MLC is based on.
منابع مشابه
Applying : towards a Basis for Concurrent Imperative Programming
We study an extension of asynchronous-calculus where names can be returned from processes. We show that with this simple extension an extensive range of functional, state-based and control-based programming constructs can be expressed by macro expansions, similar to Church-encodings in lambda calculus.
متن کاملThe Semantics of Syntax Applying Denotational Semantics to Hygienic Macro Systems
Typically, when semanticists hear the words “Scheme” or “Lisp”, what comes to mind is “untyped lambda calculus plus higher-order state and first-class control”. Given our typical concerns, this seems to be the essence of Scheme: it is a dynamically typed applied lambda calculus that supports mutable data and exposes first-class continuations to the programmer. These features expose a complete c...
متن کاملHow to Write Seemingly Unhygienic and Referentially Opaque Macros with Syntax-rules
This paper details how folklore notions of hygiene and referential transparency of R5RS macros are defeated by a systematic attack. We demonstrate syntax-rules that seem to capture user identi ers and allow their own identi ers to be captured by the closest lexical bindings. In other words, we have written R5RS macros that accomplish what commonly believed to be impossible. We build on the the ...
متن کاملOn the algebraic models of lambda calculus
The variety (equational class) of lambda abstraction algebras was introduced to algebraize the untyped lambda calculus in the same way Boolean algebras algebraize the classical propositional calculus. The equational theory of lambda abstraction algebras is intended as an alternative to combinatory logic in this regard since it is a rst-order algebraic description of lambda calculus, which allow...
متن کاملOn the denotational semantics of the untyped lambda-mu calculus
Starting with the idea of reflexive objects in Selinger’s control categories, we define three different denotational models of Parigot’s untyped lambda-mu calculus. The first one is built from an intersection types system for the lambda-mu calculus leading to a generalization of Engeler’s model of the untyped lambda calculus. The second model introduces correlation spaces (coming from Girard’s ...
متن کامل